{
  "cells": [
    {
      "attachments": {},
      "cell_type": "markdown",
      "metadata": {
        "id": "ac9_FmrCOwQL"
      },
      "source": [
        "# FullControl design template\n",
        "\n",
        "*<<< check out demo models [here](https://github.com/FullControlXYZ/fullcontrol/tree/master/models/README.md) >>>*\n",
        "  \n",
        "press ctrl+F9 to run all cells in this notebook, or press shift+enter to run each cell sequentially \n",
        "\n",
        "if you change one of the code cells, make sure you run it and all subsequent cells again (in order)\n",
        "\n",
        "*this document is a jupyter notebook - if they're new to you, check out how they work: [link](https://www.google.com/search?q=ipynb+tutorial), [link](https://jupyter.org/try-jupyter/retro/notebooks/?path=notebooks/Intro.ipynb), [link](https://colab.research.google.com/)*\n### be patient :)\n\nthe next code cell may take a while because running it causes several things to happen:\n- connect to a google colab server -> download the fullcontrol code -> install the fullcontrol code\n\ncheck out [other tutorials](https://github.com/FullControlXYZ/fullcontrol/blob/master/tutorials/README.md) to understand the python code for the FullControl design"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 1,
      "metadata": {
        "id": "57XXnogSOvDx"
      },
      "outputs": [],
      "source": [
        "if 'google.colab' in str(get_ipython()):\n  !pip install git+https://github.com/FullControlXYZ/fullcontrol --quiet\nimport fullcontrol as fc\nfrom google.colab import files"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 2,
      "metadata": {},
      "outputs": [],
      "source": [
        "# printer/gcode parameters\n",
        "\n",
        "design_name = 'my_design'\n",
        "nozzle_temp = 210\n",
        "bed_temp = 40\n",
        "print_speed = 1000\n",
        "fan_percent = 100\n",
        "printer_name='prusa_i3' # generic / ultimaker2plus / prusa_i3 / ender_3 / cr_10 / bambulab_x1 / toolchanger_T0"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 3,
      "metadata": {
        "id": "DeWKjlzbPC0u"
      },
      "outputs": [],
      "source": [
        "# design parameters\n",
        "\n",
        "EW = 0.8 # extrusion width\n",
        "EH = 0.3 # extrusion height (and layer height)\n",
        "initial_z = EH*0.6 # initial nozzle position is set to 0.6x the extrusion height to get a bit of 'squish' for good bed adhesion\n",
        "layers = 50"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 4,
      "metadata": {
        "id": "kLPh7aTwQKrF"
      },
      "outputs": [],
      "source": [
        "# generate the design (make sure you've run the above cells before running this cell)\n",
        "\n",
        "steps = []\n",
        "for layer in range(layers):\n",
        "  steps.append(fc.Point(x=50, y=50, z=initial_z+layer*EH))\n",
        "  steps.append(fc.Point(x=100, y=50, z=initial_z+layer*EH))\n",
        "  steps.append(fc.Point(x=100, y=100, z=initial_z+layer*EH))\n",
        "  steps.append(fc.Point(x=50, y=100, z=initial_z+layer*EH))\n",
        "  steps.append(fc.Point(x=50, y=50, z=initial_z+layer*EH))\n",
        "  \n",
        "# instead of the above for-loop code, you can create the exact same design using built-in FullControl functions (uncomment the next two lines):\n",
        "# rectangle_steps = fc.rectangleXY(fc.Point(x=50, y=50, z=initial_z), 50, 50)\n",
        "# steps = fc.move(rectangle_steps, fc.Vector(z=EH), copy=True, copy_quantity=layers)"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 9,
      "metadata": {
        "id": "ZVdfnpt5RSUi"
      },
      "outputs": [
        {
          "data": {
            "application/vnd.plotly.v1+json": {
              "config": {
                "plotlyServerURL": "https://plot.ly"
              },
              "data": [
                {
                  "line": {
                    "color": [
                      "rgb(0.00, 0.00, 255.00)",
                      "rgb(0.00, 0.00, 255.00)",
                      "rgb(0.00, 0.00, 255.00)",
                      "rgb(0.00, 0.00, 255.00)",
                      "rgb(0.00, 0.00, 255.00)",
                      "rgb(0.00, 5.10, 255.00)",
                      "rgb(0.00, 5.10, 255.00)",
                      "rgb(0.00, 5.10, 255.00)",
                      "rgb(0.00, 5.10, 255.00)",
                      "rgb(0.00, 5.10, 255.00)",
                      "rgb(0.00, 10.46, 255.00)",
                      "rgb(0.00, 10.46, 255.00)",
                      "rgb(0.00, 10.46, 255.00)",
                      "rgb(0.00, 10.46, 255.00)",
                      "rgb(0.00, 10.46, 255.00)",
                      "rgb(0.00, 15.55, 255.00)",
                      "rgb(0.00, 15.55, 255.00)",
                      "rgb(0.00, 15.55, 255.00)",
                      "rgb(0.00, 15.55, 255.00)",
                      "rgb(0.00, 15.55, 255.00)",
                      "rgb(0.00, 20.91, 255.00)",
                      "rgb(0.00, 20.91, 255.00)",
                      "rgb(0.00, 20.91, 255.00)",
                      "rgb(0.00, 20.91, 255.00)",
                      "rgb(0.00, 20.91, 255.00)",
                      "rgb(0.00, 26.01, 255.00)",
                      "rgb(0.00, 26.01, 255.00)",
                      "rgb(0.00, 26.01, 255.00)",
                      "rgb(0.00, 26.01, 255.00)",
                      "rgb(0.00, 26.01, 255.00)",
                      "rgb(0.00, 31.11, 255.00)",
                      "rgb(0.00, 31.11, 255.00)",
                      "rgb(0.00, 31.11, 255.00)",
                      "rgb(0.00, 31.11, 255.00)",
                      "rgb(0.00, 31.11, 255.00)",
                      "rgb(0.00, 36.46, 255.00)",
                      "rgb(0.00, 36.46, 255.00)",
                      "rgb(0.00, 36.46, 255.00)",
                      "rgb(0.00, 36.46, 255.00)",
                      "rgb(0.00, 36.46, 255.00)",
                      "rgb(0.00, 41.57, 255.00)",
                      "rgb(0.00, 41.57, 255.00)",
                      "rgb(0.00, 41.57, 255.00)",
                      "rgb(0.00, 41.57, 255.00)",
                      "rgb(0.00, 41.57, 255.00)",
                      "rgb(0.00, 46.92, 255.00)",
                      "rgb(0.00, 46.92, 255.00)",
                      "rgb(0.00, 46.92, 255.00)",
                      "rgb(0.00, 46.92, 255.00)",
                      "rgb(0.00, 46.92, 255.00)",
                      "rgb(0.00, 52.02, 255.00)",
                      "rgb(0.00, 52.02, 255.00)",
                      "rgb(0.00, 52.02, 255.00)",
                      "rgb(0.00, 52.02, 255.00)",
                      "rgb(0.00, 52.02, 255.00)",
                      "rgb(0.00, 57.12, 255.00)",
                      "rgb(0.00, 57.12, 255.00)",
                      "rgb(0.00, 57.12, 255.00)",
                      "rgb(0.00, 57.12, 255.00)",
                      "rgb(0.00, 57.12, 255.00)",
                      "rgb(0.00, 62.48, 255.00)",
                      "rgb(0.00, 62.48, 255.00)",
                      "rgb(0.00, 62.48, 255.00)",
                      "rgb(0.00, 62.48, 255.00)",
                      "rgb(0.00, 62.48, 255.00)",
                      "rgb(0.00, 67.58, 255.00)",
                      "rgb(0.00, 67.58, 255.00)",
                      "rgb(0.00, 67.58, 255.00)",
                      "rgb(0.00, 67.58, 255.00)",
                      "rgb(0.00, 67.58, 255.00)",
                      "rgb(0.00, 72.93, 255.00)",
                      "rgb(0.00, 72.93, 255.00)",
                      "rgb(0.00, 72.93, 255.00)",
                      "rgb(0.00, 72.93, 255.00)",
                      "rgb(0.00, 72.93, 255.00)",
                      "rgb(0.00, 78.03, 255.00)",
                      "rgb(0.00, 78.03, 255.00)",
                      "rgb(0.00, 78.03, 255.00)",
                      "rgb(0.00, 78.03, 255.00)",
                      "rgb(0.00, 78.03, 255.00)",
                      "rgb(0.00, 83.39, 255.00)",
                      "rgb(0.00, 83.39, 255.00)",
                      "rgb(0.00, 83.39, 255.00)",
                      "rgb(0.00, 83.39, 255.00)",
                      "rgb(0.00, 83.39, 255.00)",
                      "rgb(0.00, 88.48, 255.00)",
                      "rgb(0.00, 88.48, 255.00)",
                      "rgb(0.00, 88.48, 255.00)",
                      "rgb(0.00, 88.48, 255.00)",
                      "rgb(0.00, 88.48, 255.00)",
                      "rgb(0.00, 93.58, 255.00)",
                      "rgb(0.00, 93.58, 255.00)",
                      "rgb(0.00, 93.58, 255.00)",
                      "rgb(0.00, 93.58, 255.00)",
                      "rgb(0.00, 93.58, 255.00)",
                      "rgb(0.00, 98.94, 255.00)",
                      "rgb(0.00, 98.94, 255.00)",
                      "rgb(0.00, 98.94, 255.00)",
                      "rgb(0.00, 98.94, 255.00)",
                      "rgb(0.00, 98.94, 255.00)",
                      "rgb(0.00, 104.04, 255.00)",
                      "rgb(0.00, 104.04, 255.00)",
                      "rgb(0.00, 104.04, 255.00)",
                      "rgb(0.00, 104.04, 255.00)",
                      "rgb(0.00, 104.04, 255.00)",
                      "rgb(0.00, 109.39, 255.00)",
                      "rgb(0.00, 109.39, 255.00)",
                      "rgb(0.00, 109.39, 255.00)",
                      "rgb(0.00, 109.39, 255.00)",
                      "rgb(0.00, 109.39, 255.00)",
                      "rgb(0.00, 114.50, 255.00)",
                      "rgb(0.00, 114.50, 255.00)",
                      "rgb(0.00, 114.50, 255.00)",
                      "rgb(0.00, 114.50, 255.00)",
                      "rgb(0.00, 114.50, 255.00)",
                      "rgb(0.00, 119.59, 255.00)",
                      "rgb(0.00, 119.59, 255.00)",
                      "rgb(0.00, 119.59, 255.00)",
                      "rgb(0.00, 119.59, 255.00)",
                      "rgb(0.00, 119.59, 255.00)",
                      "rgb(0.00, 124.95, 255.00)",
                      "rgb(0.00, 124.95, 255.00)",
                      "rgb(0.00, 124.95, 255.00)",
                      "rgb(0.00, 124.95, 255.00)",
                      "rgb(0.00, 124.95, 255.00)",
                      "rgb(0.00, 130.05, 255.00)",
                      "rgb(0.00, 130.05, 255.00)",
                      "rgb(0.00, 130.05, 255.00)",
                      "rgb(0.00, 130.05, 255.00)",
                      "rgb(0.00, 130.05, 255.00)",
                      "rgb(0.00, 135.41, 255.00)",
                      "rgb(0.00, 135.41, 255.00)",
                      "rgb(0.00, 135.41, 255.00)",
                      "rgb(0.00, 135.41, 255.00)",
                      "rgb(0.00, 135.41, 255.00)",
                      "rgb(0.00, 140.51, 255.00)",
                      "rgb(0.00, 140.51, 255.00)",
                      "rgb(0.00, 140.51, 255.00)",
                      "rgb(0.00, 140.51, 255.00)",
                      "rgb(0.00, 140.51, 255.00)",
                      "rgb(0.00, 145.60, 255.00)",
                      "rgb(0.00, 145.60, 255.00)",
                      "rgb(0.00, 145.60, 255.00)",
                      "rgb(0.00, 145.60, 255.00)",
                      "rgb(0.00, 145.60, 255.00)",
                      "rgb(0.00, 150.96, 255.00)",
                      "rgb(0.00, 150.96, 255.00)",
                      "rgb(0.00, 150.96, 255.00)",
                      "rgb(0.00, 150.96, 255.00)",
                      "rgb(0.00, 150.96, 255.00)",
                      "rgb(0.00, 156.06, 255.00)",
                      "rgb(0.00, 156.06, 255.00)",
                      "rgb(0.00, 156.06, 255.00)",
                      "rgb(0.00, 156.06, 255.00)",
                      "rgb(0.00, 156.06, 255.00)",
                      "rgb(0.00, 161.41, 255.00)",
                      "rgb(0.00, 161.41, 255.00)",
                      "rgb(0.00, 161.41, 255.00)",
                      "rgb(0.00, 161.41, 255.00)",
                      "rgb(0.00, 161.41, 255.00)",
                      "rgb(0.00, 166.52, 255.00)",
                      "rgb(0.00, 166.52, 255.00)",
                      "rgb(0.00, 166.52, 255.00)",
                      "rgb(0.00, 166.52, 255.00)",
                      "rgb(0.00, 166.52, 255.00)",
                      "rgb(0.00, 171.62, 255.00)",
                      "rgb(0.00, 171.62, 255.00)",
                      "rgb(0.00, 171.62, 255.00)",
                      "rgb(0.00, 171.62, 255.00)",
                      "rgb(0.00, 171.62, 255.00)",
                      "rgb(0.00, 176.97, 255.00)",
                      "rgb(0.00, 176.97, 255.00)",
                      "rgb(0.00, 176.97, 255.00)",
                      "rgb(0.00, 176.97, 255.00)",
                      "rgb(0.00, 176.97, 255.00)",
                      "rgb(0.00, 182.07, 255.00)",
                      "rgb(0.00, 182.07, 255.00)",
                      "rgb(0.00, 182.07, 255.00)",
                      "rgb(0.00, 182.07, 255.00)",
                      "rgb(0.00, 182.07, 255.00)",
                      "rgb(0.00, 187.42, 255.00)",
                      "rgb(0.00, 187.42, 255.00)",
                      "rgb(0.00, 187.42, 255.00)",
                      "rgb(0.00, 187.42, 255.00)",
                      "rgb(0.00, 187.42, 255.00)",
                      "rgb(0.00, 192.53, 255.00)",
                      "rgb(0.00, 192.53, 255.00)",
                      "rgb(0.00, 192.53, 255.00)",
                      "rgb(0.00, 192.53, 255.00)",
                      "rgb(0.00, 192.53, 255.00)",
                      "rgb(0.00, 197.88, 255.00)",
                      "rgb(0.00, 197.88, 255.00)",
                      "rgb(0.00, 197.88, 255.00)",
                      "rgb(0.00, 197.88, 255.00)",
                      "rgb(0.00, 197.88, 255.00)",
                      "rgb(0.00, 202.98, 255.00)",
                      "rgb(0.00, 202.98, 255.00)",
                      "rgb(0.00, 202.98, 255.00)",
                      "rgb(0.00, 202.98, 255.00)",
                      "rgb(0.00, 202.98, 255.00)",
                      "rgb(0.00, 208.08, 255.00)",
                      "rgb(0.00, 208.08, 255.00)",
                      "rgb(0.00, 208.08, 255.00)",
                      "rgb(0.00, 208.08, 255.00)",
                      "rgb(0.00, 208.08, 255.00)",
                      "rgb(0.00, 213.44, 255.00)",
                      "rgb(0.00, 213.44, 255.00)",
                      "rgb(0.00, 213.44, 255.00)",
                      "rgb(0.00, 213.44, 255.00)",
                      "rgb(0.00, 213.44, 255.00)",
                      "rgb(0.00, 218.53, 255.00)",
                      "rgb(0.00, 218.53, 255.00)",
                      "rgb(0.00, 218.53, 255.00)",
                      "rgb(0.00, 218.53, 255.00)",
                      "rgb(0.00, 218.53, 255.00)",
                      "rgb(0.00, 223.89, 255.00)",
                      "rgb(0.00, 223.89, 255.00)",
                      "rgb(0.00, 223.89, 255.00)",
                      "rgb(0.00, 223.89, 255.00)",
                      "rgb(0.00, 223.89, 255.00)",
                      "rgb(0.00, 228.99, 255.00)",
                      "rgb(0.00, 228.99, 255.00)",
                      "rgb(0.00, 228.99, 255.00)",
                      "rgb(0.00, 228.99, 255.00)",
                      "rgb(0.00, 228.99, 255.00)",
                      "rgb(0.00, 234.09, 255.00)",
                      "rgb(0.00, 234.09, 255.00)",
                      "rgb(0.00, 234.09, 255.00)",
                      "rgb(0.00, 234.09, 255.00)",
                      "rgb(0.00, 234.09, 255.00)",
                      "rgb(0.00, 239.44, 255.00)",
                      "rgb(0.00, 239.44, 255.00)",
                      "rgb(0.00, 239.44, 255.00)",
                      "rgb(0.00, 239.44, 255.00)",
                      "rgb(0.00, 239.44, 255.00)",
                      "rgb(0.00, 244.54, 255.00)",
                      "rgb(0.00, 244.54, 255.00)",
                      "rgb(0.00, 244.54, 255.00)",
                      "rgb(0.00, 244.54, 255.00)",
                      "rgb(0.00, 244.54, 255.00)",
                      "rgb(0.00, 249.90, 255.00)",
                      "rgb(0.00, 249.90, 255.00)",
                      "rgb(0.00, 249.90, 255.00)",
                      "rgb(0.00, 249.90, 255.00)",
                      "rgb(0.00, 249.90, 255.00)",
                      "rgb(0.00, 255.00, 255.00)",
                      "rgb(0.00, 255.00, 255.00)",
                      "rgb(0.00, 255.00, 255.00)",
                      "rgb(0.00, 255.00, 255.00)",
                      "rgb(0.00, 255.00, 255.00)"
                    ],
                    "width": 4
                  },
                  "mode": "lines",
                  "showlegend": false,
                  "type": "scatter3d",
                  "x": [
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50
                  ],
                  "y": [
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50,
                    50,
                    50,
                    100,
                    100,
                    50
                  ],
                  "z": [
                    0.18,
                    0.18,
                    0.18,
                    0.18,
                    0.18,
                    0.48,
                    0.48,
                    0.48,
                    0.48,
                    0.48,
                    0.78,
                    0.78,
                    0.78,
                    0.78,
                    0.78,
                    1.08,
                    1.08,
                    1.08,
                    1.08,
                    1.08,
                    1.38,
                    1.38,
                    1.38,
                    1.38,
                    1.38,
                    1.68,
                    1.68,
                    1.68,
                    1.68,
                    1.68,
                    1.98,
                    1.98,
                    1.98,
                    1.98,
                    1.98,
                    2.28,
                    2.28,
                    2.28,
                    2.28,
                    2.28,
                    2.58,
                    2.58,
                    2.58,
                    2.58,
                    2.58,
                    2.88,
                    2.88,
                    2.88,
                    2.88,
                    2.88,
                    3.18,
                    3.18,
                    3.18,
                    3.18,
                    3.18,
                    3.48,
                    3.48,
                    3.48,
                    3.48,
                    3.48,
                    3.78,
                    3.78,
                    3.78,
                    3.78,
                    3.78,
                    4.08,
                    4.08,
                    4.08,
                    4.08,
                    4.08,
                    4.38,
                    4.38,
                    4.38,
                    4.38,
                    4.38,
                    4.68,
                    4.68,
                    4.68,
                    4.68,
                    4.68,
                    4.98,
                    4.98,
                    4.98,
                    4.98,
                    4.98,
                    5.28,
                    5.28,
                    5.28,
                    5.28,
                    5.28,
                    5.58,
                    5.58,
                    5.58,
                    5.58,
                    5.58,
                    5.88,
                    5.88,
                    5.88,
                    5.88,
                    5.88,
                    6.18,
                    6.18,
                    6.18,
                    6.18,
                    6.18,
                    6.48,
                    6.48,
                    6.48,
                    6.48,
                    6.48,
                    6.78,
                    6.78,
                    6.78,
                    6.78,
                    6.78,
                    7.08,
                    7.08,
                    7.08,
                    7.08,
                    7.08,
                    7.38,
                    7.38,
                    7.38,
                    7.38,
                    7.38,
                    7.68,
                    7.68,
                    7.68,
                    7.68,
                    7.68,
                    7.98,
                    7.98,
                    7.98,
                    7.98,
                    7.98,
                    8.28,
                    8.28,
                    8.28,
                    8.28,
                    8.28,
                    8.58,
                    8.58,
                    8.58,
                    8.58,
                    8.58,
                    8.88,
                    8.88,
                    8.88,
                    8.88,
                    8.88,
                    9.18,
                    9.18,
                    9.18,
                    9.18,
                    9.18,
                    9.48,
                    9.48,
                    9.48,
                    9.48,
                    9.48,
                    9.78,
                    9.78,
                    9.78,
                    9.78,
                    9.78,
                    10.08,
                    10.08,
                    10.08,
                    10.08,
                    10.08,
                    10.38,
                    10.38,
                    10.38,
                    10.38,
                    10.38,
                    10.68,
                    10.68,
                    10.68,
                    10.68,
                    10.68,
                    10.98,
                    10.98,
                    10.98,
                    10.98,
                    10.98,
                    11.28,
                    11.28,
                    11.28,
                    11.28,
                    11.28,
                    11.58,
                    11.58,
                    11.58,
                    11.58,
                    11.58,
                    11.88,
                    11.88,
                    11.88,
                    11.88,
                    11.88,
                    12.18,
                    12.18,
                    12.18,
                    12.18,
                    12.18,
                    12.48,
                    12.48,
                    12.48,
                    12.48,
                    12.48,
                    12.78,
                    12.78,
                    12.78,
                    12.78,
                    12.78,
                    13.08,
                    13.08,
                    13.08,
                    13.08,
                    13.08,
                    13.38,
                    13.38,
                    13.38,
                    13.38,
                    13.38,
                    13.68,
                    13.68,
                    13.68,
                    13.68,
                    13.68,
                    13.98,
                    13.98,
                    13.98,
                    13.98,
                    13.98,
                    14.28,
                    14.28,
                    14.28,
                    14.28,
                    14.28,
                    14.58,
                    14.58,
                    14.58,
                    14.58,
                    14.58,
                    14.88,
                    14.88,
                    14.88,
                    14.88,
                    14.88
                  ]
                },
                {
                  "marker": {
                    "color": "red",
                    "size": 2
                  },
                  "mode": "markers",
                  "showlegend": false,
                  "type": "scatter3d",
                  "x": [],
                  "y": [],
                  "z": []
                }
              ],
              "layout": {
                "height": 500,
                "margin": {
                  "b": 10,
                  "l": 10,
                  "pad": 4,
                  "r": 10,
                  "t": 10
                },
                "paper_bgcolor": "black",
                "scene": {
                  "aspectmode": "cube",
                  "camera": {
                    "center": {
                      "x": 0,
                      "y": 0,
                      "z": -0.5
                    },
                    "eye": {
                      "x": -0.7142857142857143,
                      "y": -1.4285714285714286,
                      "z": 0.2142857142857143
                    }
                  },
                  "xaxis": {
                    "backgroundcolor": "black",
                    "nticks": 10,
                    "range": [
                      49.998999999999995,
                      100.001
                    ]
                  },
                  "yaxis": {
                    "backgroundcolor": "black",
                    "nticks": 10,
                    "range": [
                      49.998999999999995,
                      100.001
                    ]
                  },
                  "zaxis": {
                    "backgroundcolor": "black",
                    "nticks": 10,
                    "range": [
                      0,
                      50.002
                    ]
                  }
                },
                "template": {
                  "data": {
                    "bar": [
                      {
                        "error_x": {
                          "color": "#f2f5fa"
                        },
                        "error_y": {
                          "color": "#f2f5fa"
                        },
                        "marker": {
                          "line": {
                            "color": "rgb(17,17,17)",
                            "width": 0.5
                          },
                          "pattern": {
                            "fillmode": "overlay",
                            "size": 10,
                            "solidity": 0.2
                          }
                        },
                        "type": "bar"
                      }
                    ],
                    "barpolar": [
                      {
                        "marker": {
                          "line": {
                            "color": "rgb(17,17,17)",
                            "width": 0.5
                          },
                          "pattern": {
                            "fillmode": "overlay",
                            "size": 10,
                            "solidity": 0.2
                          }
                        },
                        "type": "barpolar"
                      }
                    ],
                    "carpet": [
                      {
                        "aaxis": {
                          "endlinecolor": "#A2B1C6",
                          "gridcolor": "#506784",
                          "linecolor": "#506784",
                          "minorgridcolor": "#506784",
                          "startlinecolor": "#A2B1C6"
                        },
                        "baxis": {
                          "endlinecolor": "#A2B1C6",
                          "gridcolor": "#506784",
                          "linecolor": "#506784",
                          "minorgridcolor": "#506784",
                          "startlinecolor": "#A2B1C6"
                        },
                        "type": "carpet"
                      }
                    ],
                    "choropleth": [
                      {
                        "colorbar": {
                          "outlinewidth": 0,
                          "ticks": ""
                        },
                        "type": "choropleth"
                      }
                    ],
                    "contour": [
                      {
                        "colorbar": {
                          "outlinewidth": 0,
                          "ticks": ""
                        },
                        "colorscale": [
                          [
                            0,
                            "#0d0887"
                          ],
                          [
                            0.1111111111111111,
                            "#46039f"
                          ],
                          [
                            0.2222222222222222,
                            "#7201a8"
                          ],
                          [
                            0.3333333333333333,
                            "#9c179e"
                          ],
                          [
                            0.4444444444444444,
                            "#bd3786"
                          ],
                          [
                            0.5555555555555556,
                            "#d8576b"
                          ],
                          [
                            0.6666666666666666,
                            "#ed7953"
                          ],
                          [
                            0.7777777777777778,
                            "#fb9f3a"
                          ],
                          [
                            0.8888888888888888,
                            "#fdca26"
                          ],
                          [
                            1,
                            "#f0f921"
                          ]
                        ],
                        "type": "contour"
                      }
                    ],
                    "contourcarpet": [
                      {
                        "colorbar": {
                          "outlinewidth": 0,
                          "ticks": ""
                        },
                        "type": "contourcarpet"
                      }
                    ],
                    "heatmap": [
                      {
                        "colorbar": {
                          "outlinewidth": 0,
                          "ticks": ""
                        },
                        "colorscale": [
                          [
                            0,
                            "#0d0887"
                          ],
                          [
                            0.1111111111111111,
                            "#46039f"
                          ],
                          [
                            0.2222222222222222,
                            "#7201a8"
                          ],
                          [
                            0.3333333333333333,
                            "#9c179e"
                          ],
                          [
                            0.4444444444444444,
                            "#bd3786"
                          ],
                          [
                            0.5555555555555556,
                            "#d8576b"
                          ],
                          [
                            0.6666666666666666,
                            "#ed7953"
                          ],
                          [
                            0.7777777777777778,
                            "#fb9f3a"
                          ],
                          [
                            0.8888888888888888,
                            "#fdca26"
                          ],
                          [
                            1,
                            "#f0f921"
                          ]
                        ],
                        "type": "heatmap"
                      }
                    ],
                    "heatmapgl": [
                      {
                        "colorbar": {
                          "outlinewidth": 0,
                          "ticks": ""
                        },
                        "colorscale": [
                          [
                            0,
                            "#0d0887"
                          ],
                          [
                            0.1111111111111111,
                            "#46039f"
                          ],
                          [
                            0.2222222222222222,
                            "#7201a8"
                          ],
                          [
                            0.3333333333333333,
                            "#9c179e"
                          ],
                          [
                            0.4444444444444444,
                            "#bd3786"
                          ],
                          [
                            0.5555555555555556,
                            "#d8576b"
                          ],
                          [
                            0.6666666666666666,
                            "#ed7953"
                          ],
                          [
                            0.7777777777777778,
                            "#fb9f3a"
                          ],
                          [
                            0.8888888888888888,
                            "#fdca26"
                          ],
                          [
                            1,
                            "#f0f921"
                          ]
                        ],
                        "type": "heatmapgl"
                      }
                    ],
                    "histogram": [
                      {
                        "marker": {
                          "pattern": {
                            "fillmode": "overlay",
                            "size": 10,
                            "solidity": 0.2
                          }
                        },
                        "type": "histogram"
                      }
                    ],
                    "histogram2d": [
                      {
                        "colorbar": {
                          "outlinewidth": 0,
                          "ticks": ""
                        },
                        "colorscale": [
                          [
                            0,
                            "#0d0887"
                          ],
                          [
                            0.1111111111111111,
                            "#46039f"
                          ],
                          [
                            0.2222222222222222,
                            "#7201a8"
                          ],
                          [
                            0.3333333333333333,
                            "#9c179e"
                          ],
                          [
                            0.4444444444444444,
                            "#bd3786"
                          ],
                          [
                            0.5555555555555556,
                            "#d8576b"
                          ],
                          [
                            0.6666666666666666,
                            "#ed7953"
                          ],
                          [
                            0.7777777777777778,
                            "#fb9f3a"
                          ],
                          [
                            0.8888888888888888,
                            "#fdca26"
                          ],
                          [
                            1,
                            "#f0f921"
                          ]
                        ],
                        "type": "histogram2d"
                      }
                    ],
                    "histogram2dcontour": [
                      {
                        "colorbar": {
                          "outlinewidth": 0,
                          "ticks": ""
                        },
                        "colorscale": [
                          [
                            0,
                            "#0d0887"
                          ],
                          [
                            0.1111111111111111,
                            "#46039f"
                          ],
                          [
                            0.2222222222222222,
                            "#7201a8"
                          ],
                          [
                            0.3333333333333333,
                            "#9c179e"
                          ],
                          [
                            0.4444444444444444,
                            "#bd3786"
                          ],
                          [
                            0.5555555555555556,
                            "#d8576b"
                          ],
                          [
                            0.6666666666666666,
                            "#ed7953"
                          ],
                          [
                            0.7777777777777778,
                            "#fb9f3a"
                          ],
                          [
                            0.8888888888888888,
                            "#fdca26"
                          ],
                          [
                            1,
                            "#f0f921"
                          ]
                        ],
                        "type": "histogram2dcontour"
                      }
                    ],
                    "mesh3d": [
                      {
                        "colorbar": {
                          "outlinewidth": 0,
                          "ticks": ""
                        },
                        "type": "mesh3d"
                      }
                    ],
                    "parcoords": [
                      {
                        "line": {
                          "colorbar": {
                            "outlinewidth": 0,
                            "ticks": ""
                          }
                        },
                        "type": "parcoords"
                      }
                    ],
                    "pie": [
                      {
                        "automargin": true,
                        "type": "pie"
                      }
                    ],
                    "scatter": [
                      {
                        "marker": {
                          "line": {
                            "color": "#283442"
                          }
                        },
                        "type": "scatter"
                      }
                    ],
                    "scatter3d": [
                      {
                        "line": {
                          "colorbar": {
                            "outlinewidth": 0,
                            "ticks": ""
                          }
                        },
                        "marker": {
                          "colorbar": {
                            "outlinewidth": 0,
                            "ticks": ""
                          }
                        },
                        "type": "scatter3d"
                      }
                    ],
                    "scattercarpet": [
                      {
                        "marker": {
                          "colorbar": {
                            "outlinewidth": 0,
                            "ticks": ""
                          }
                        },
                        "type": "scattercarpet"
                      }
                    ],
                    "scattergeo": [
                      {
                        "marker": {
                          "colorbar": {
                            "outlinewidth": 0,
                            "ticks": ""
                          }
                        },
                        "type": "scattergeo"
                      }
                    ],
                    "scattergl": [
                      {
                        "marker": {
                          "line": {
                            "color": "#283442"
                          }
                        },
                        "type": "scattergl"
                      }
                    ],
                    "scattermapbox": [
                      {
                        "marker": {
                          "colorbar": {
                            "outlinewidth": 0,
                            "ticks": ""
                          }
                        },
                        "type": "scattermapbox"
                      }
                    ],
                    "scatterpolar": [
                      {
                        "marker": {
                          "colorbar": {
                            "outlinewidth": 0,
                            "ticks": ""
                          }
                        },
                        "type": "scatterpolar"
                      }
                    ],
                    "scatterpolargl": [
                      {
                        "marker": {
                          "colorbar": {
                            "outlinewidth": 0,
                            "ticks": ""
                          }
                        },
                        "type": "scatterpolargl"
                      }
                    ],
                    "scatterternary": [
                      {
                        "marker": {
                          "colorbar": {
                            "outlinewidth": 0,
                            "ticks": ""
                          }
                        },
                        "type": "scatterternary"
                      }
                    ],
                    "surface": [
                      {
                        "colorbar": {
                          "outlinewidth": 0,
                          "ticks": ""
                        },
                        "colorscale": [
                          [
                            0,
                            "#0d0887"
                          ],
                          [
                            0.1111111111111111,
                            "#46039f"
                          ],
                          [
                            0.2222222222222222,
                            "#7201a8"
                          ],
                          [
                            0.3333333333333333,
                            "#9c179e"
                          ],
                          [
                            0.4444444444444444,
                            "#bd3786"
                          ],
                          [
                            0.5555555555555556,
                            "#d8576b"
                          ],
                          [
                            0.6666666666666666,
                            "#ed7953"
                          ],
                          [
                            0.7777777777777778,
                            "#fb9f3a"
                          ],
                          [
                            0.8888888888888888,
                            "#fdca26"
                          ],
                          [
                            1,
                            "#f0f921"
                          ]
                        ],
                        "type": "surface"
                      }
                    ],
                    "table": [
                      {
                        "cells": {
                          "fill": {
                            "color": "#506784"
                          },
                          "line": {
                            "color": "rgb(17,17,17)"
                          }
                        },
                        "header": {
                          "fill": {
                            "color": "#2a3f5f"
                          },
                          "line": {
                            "color": "rgb(17,17,17)"
                          }
                        },
                        "type": "table"
                      }
                    ]
                  },
                  "layout": {
                    "annotationdefaults": {
                      "arrowcolor": "#f2f5fa",
                      "arrowhead": 0,
                      "arrowwidth": 1
                    },
                    "autotypenumbers": "strict",
                    "coloraxis": {
                      "colorbar": {
                        "outlinewidth": 0,
                        "ticks": ""
                      }
                    },
                    "colorscale": {
                      "diverging": [
                        [
                          0,
                          "#8e0152"
                        ],
                        [
                          0.1,
                          "#c51b7d"
                        ],
                        [
                          0.2,
                          "#de77ae"
                        ],
                        [
                          0.3,
                          "#f1b6da"
                        ],
                        [
                          0.4,
                          "#fde0ef"
                        ],
                        [
                          0.5,
                          "#f7f7f7"
                        ],
                        [
                          0.6,
                          "#e6f5d0"
                        ],
                        [
                          0.7,
                          "#b8e186"
                        ],
                        [
                          0.8,
                          "#7fbc41"
                        ],
                        [
                          0.9,
                          "#4d9221"
                        ],
                        [
                          1,
                          "#276419"
                        ]
                      ],
                      "sequential": [
                        [
                          0,
                          "#0d0887"
                        ],
                        [
                          0.1111111111111111,
                          "#46039f"
                        ],
                        [
                          0.2222222222222222,
                          "#7201a8"
                        ],
                        [
                          0.3333333333333333,
                          "#9c179e"
                        ],
                        [
                          0.4444444444444444,
                          "#bd3786"
                        ],
                        [
                          0.5555555555555556,
                          "#d8576b"
                        ],
                        [
                          0.6666666666666666,
                          "#ed7953"
                        ],
                        [
                          0.7777777777777778,
                          "#fb9f3a"
                        ],
                        [
                          0.8888888888888888,
                          "#fdca26"
                        ],
                        [
                          1,
                          "#f0f921"
                        ]
                      ],
                      "sequentialminus": [
                        [
                          0,
                          "#0d0887"
                        ],
                        [
                          0.1111111111111111,
                          "#46039f"
                        ],
                        [
                          0.2222222222222222,
                          "#7201a8"
                        ],
                        [
                          0.3333333333333333,
                          "#9c179e"
                        ],
                        [
                          0.4444444444444444,
                          "#bd3786"
                        ],
                        [
                          0.5555555555555556,
                          "#d8576b"
                        ],
                        [
                          0.6666666666666666,
                          "#ed7953"
                        ],
                        [
                          0.7777777777777778,
                          "#fb9f3a"
                        ],
                        [
                          0.8888888888888888,
                          "#fdca26"
                        ],
                        [
                          1,
                          "#f0f921"
                        ]
                      ]
                    },
                    "colorway": [
                      "#636efa",
                      "#EF553B",
                      "#00cc96",
                      "#ab63fa",
                      "#FFA15A",
                      "#19d3f3",
                      "#FF6692",
                      "#B6E880",
                      "#FF97FF",
                      "#FECB52"
                    ],
                    "font": {
                      "color": "#f2f5fa"
                    },
                    "geo": {
                      "bgcolor": "rgb(17,17,17)",
                      "lakecolor": "rgb(17,17,17)",
                      "landcolor": "rgb(17,17,17)",
                      "showlakes": true,
                      "showland": true,
                      "subunitcolor": "#506784"
                    },
                    "hoverlabel": {
                      "align": "left"
                    },
                    "hovermode": "closest",
                    "mapbox": {
                      "style": "dark"
                    },
                    "paper_bgcolor": "rgb(17,17,17)",
                    "plot_bgcolor": "rgb(17,17,17)",
                    "polar": {
                      "angularaxis": {
                        "gridcolor": "#506784",
                        "linecolor": "#506784",
                        "ticks": ""
                      },
                      "bgcolor": "rgb(17,17,17)",
                      "radialaxis": {
                        "gridcolor": "#506784",
                        "linecolor": "#506784",
                        "ticks": ""
                      }
                    },
                    "scene": {
                      "xaxis": {
                        "backgroundcolor": "rgb(17,17,17)",
                        "gridcolor": "#506784",
                        "gridwidth": 2,
                        "linecolor": "#506784",
                        "showbackground": true,
                        "ticks": "",
                        "zerolinecolor": "#C8D4E3"
                      },
                      "yaxis": {
                        "backgroundcolor": "rgb(17,17,17)",
                        "gridcolor": "#506784",
                        "gridwidth": 2,
                        "linecolor": "#506784",
                        "showbackground": true,
                        "ticks": "",
                        "zerolinecolor": "#C8D4E3"
                      },
                      "zaxis": {
                        "backgroundcolor": "rgb(17,17,17)",
                        "gridcolor": "#506784",
                        "gridwidth": 2,
                        "linecolor": "#506784",
                        "showbackground": true,
                        "ticks": "",
                        "zerolinecolor": "#C8D4E3"
                      }
                    },
                    "shapedefaults": {
                      "line": {
                        "color": "#f2f5fa"
                      }
                    },
                    "sliderdefaults": {
                      "bgcolor": "#C8D4E3",
                      "bordercolor": "rgb(17,17,17)",
                      "borderwidth": 1,
                      "tickwidth": 0
                    },
                    "ternary": {
                      "aaxis": {
                        "gridcolor": "#506784",
                        "linecolor": "#506784",
                        "ticks": ""
                      },
                      "baxis": {
                        "gridcolor": "#506784",
                        "linecolor": "#506784",
                        "ticks": ""
                      },
                      "bgcolor": "rgb(17,17,17)",
                      "caxis": {
                        "gridcolor": "#506784",
                        "linecolor": "#506784",
                        "ticks": ""
                      }
                    },
                    "title": {
                      "x": 0.05
                    },
                    "updatemenudefaults": {
                      "bgcolor": "#506784",
                      "borderwidth": 0
                    },
                    "xaxis": {
                      "automargin": true,
                      "gridcolor": "#283442",
                      "linecolor": "#506784",
                      "ticks": "",
                      "title": {
                        "standoff": 15
                      },
                      "zerolinecolor": "#283442",
                      "zerolinewidth": 2
                    },
                    "yaxis": {
                      "automargin": true,
                      "gridcolor": "#283442",
                      "linecolor": "#506784",
                      "ticks": "",
                      "title": {
                        "standoff": 15
                      },
                      "zerolinecolor": "#283442",
                      "zerolinewidth": 2
                    }
                  }
                },
                "width": 800
              }
            },
            "text/html": [
              "<div>                            <div id=\"48339c5f-ea6a-4bbb-bb70-bf77e901c3a3\" class=\"plotly-graph-div\" style=\"height:500px; width:800px;\"></div>            <script type=\"text/javascript\">                require([\"plotly\"], function(Plotly) {                    window.PLOTLYENV=window.PLOTLYENV || {};                                    if (document.getElementById(\"48339c5f-ea6a-4bbb-bb70-bf77e901c3a3\")) {                    Plotly.newPlot(                        \"48339c5f-ea6a-4bbb-bb70-bf77e901c3a3\",                        [{\"line\":{\"color\":[\"rgb(0.00, 0.00, 255.00)\",\"rgb(0.00, 0.00, 255.00)\",\"rgb(0.00, 0.00, 255.00)\",\"rgb(0.00, 0.00, 255.00)\",\"rgb(0.00, 0.00, 255.00)\",\"rgb(0.00, 5.10, 255.00)\",\"rgb(0.00, 5.10, 255.00)\",\"rgb(0.00, 5.10, 255.00)\",\"rgb(0.00, 5.10, 255.00)\",\"rgb(0.00, 5.10, 255.00)\",\"rgb(0.00, 10.46, 255.00)\",\"rgb(0.00, 10.46, 255.00)\",\"rgb(0.00, 10.46, 255.00)\",\"rgb(0.00, 10.46, 255.00)\",\"rgb(0.00, 10.46, 255.00)\",\"rgb(0.00, 15.55, 255.00)\",\"rgb(0.00, 15.55, 255.00)\",\"rgb(0.00, 15.55, 255.00)\",\"rgb(0.00, 15.55, 255.00)\",\"rgb(0.00, 15.55, 255.00)\",\"rgb(0.00, 20.91, 255.00)\",\"rgb(0.00, 20.91, 255.00)\",\"rgb(0.00, 20.91, 255.00)\",\"rgb(0.00, 20.91, 255.00)\",\"rgb(0.00, 20.91, 255.00)\",\"rgb(0.00, 26.01, 255.00)\",\"rgb(0.00, 26.01, 255.00)\",\"rgb(0.00, 26.01, 255.00)\",\"rgb(0.00, 26.01, 255.00)\",\"rgb(0.00, 26.01, 255.00)\",\"rgb(0.00, 31.11, 255.00)\",\"rgb(0.00, 31.11, 255.00)\",\"rgb(0.00, 31.11, 255.00)\",\"rgb(0.00, 31.11, 255.00)\",\"rgb(0.00, 31.11, 255.00)\",\"rgb(0.00, 36.46, 255.00)\",\"rgb(0.00, 36.46, 255.00)\",\"rgb(0.00, 36.46, 255.00)\",\"rgb(0.00, 36.46, 255.00)\",\"rgb(0.00, 36.46, 255.00)\",\"rgb(0.00, 41.57, 255.00)\",\"rgb(0.00, 41.57, 255.00)\",\"rgb(0.00, 41.57, 255.00)\",\"rgb(0.00, 41.57, 255.00)\",\"rgb(0.00, 41.57, 255.00)\",\"rgb(0.00, 46.92, 255.00)\",\"rgb(0.00, 46.92, 255.00)\",\"rgb(0.00, 46.92, 255.00)\",\"rgb(0.00, 46.92, 255.00)\",\"rgb(0.00, 46.92, 255.00)\",\"rgb(0.00, 52.02, 255.00)\",\"rgb(0.00, 52.02, 255.00)\",\"rgb(0.00, 52.02, 255.00)\",\"rgb(0.00, 52.02, 255.00)\",\"rgb(0.00, 52.02, 255.00)\",\"rgb(0.00, 57.12, 255.00)\",\"rgb(0.00, 57.12, 255.00)\",\"rgb(0.00, 57.12, 255.00)\",\"rgb(0.00, 57.12, 255.00)\",\"rgb(0.00, 57.12, 255.00)\",\"rgb(0.00, 62.48, 255.00)\",\"rgb(0.00, 62.48, 255.00)\",\"rgb(0.00, 62.48, 255.00)\",\"rgb(0.00, 62.48, 255.00)\",\"rgb(0.00, 62.48, 255.00)\",\"rgb(0.00, 67.58, 255.00)\",\"rgb(0.00, 67.58, 255.00)\",\"rgb(0.00, 67.58, 255.00)\",\"rgb(0.00, 67.58, 255.00)\",\"rgb(0.00, 67.58, 255.00)\",\"rgb(0.00, 72.93, 255.00)\",\"rgb(0.00, 72.93, 255.00)\",\"rgb(0.00, 72.93, 255.00)\",\"rgb(0.00, 72.93, 255.00)\",\"rgb(0.00, 72.93, 255.00)\",\"rgb(0.00, 78.03, 255.00)\",\"rgb(0.00, 78.03, 255.00)\",\"rgb(0.00, 78.03, 255.00)\",\"rgb(0.00, 78.03, 255.00)\",\"rgb(0.00, 78.03, 255.00)\",\"rgb(0.00, 83.39, 255.00)\",\"rgb(0.00, 83.39, 255.00)\",\"rgb(0.00, 83.39, 255.00)\",\"rgb(0.00, 83.39, 255.00)\",\"rgb(0.00, 83.39, 255.00)\",\"rgb(0.00, 88.48, 255.00)\",\"rgb(0.00, 88.48, 255.00)\",\"rgb(0.00, 88.48, 255.00)\",\"rgb(0.00, 88.48, 255.00)\",\"rgb(0.00, 88.48, 255.00)\",\"rgb(0.00, 93.58, 255.00)\",\"rgb(0.00, 93.58, 255.00)\",\"rgb(0.00, 93.58, 255.00)\",\"rgb(0.00, 93.58, 255.00)\",\"rgb(0.00, 93.58, 255.00)\",\"rgb(0.00, 98.94, 255.00)\",\"rgb(0.00, 98.94, 255.00)\",\"rgb(0.00, 98.94, 255.00)\",\"rgb(0.00, 98.94, 255.00)\",\"rgb(0.00, 98.94, 255.00)\",\"rgb(0.00, 104.04, 255.00)\",\"rgb(0.00, 104.04, 255.00)\",\"rgb(0.00, 104.04, 255.00)\",\"rgb(0.00, 104.04, 255.00)\",\"rgb(0.00, 104.04, 255.00)\",\"rgb(0.00, 109.39, 255.00)\",\"rgb(0.00, 109.39, 255.00)\",\"rgb(0.00, 109.39, 255.00)\",\"rgb(0.00, 109.39, 255.00)\",\"rgb(0.00, 109.39, 255.00)\",\"rgb(0.00, 114.50, 255.00)\",\"rgb(0.00, 114.50, 255.00)\",\"rgb(0.00, 114.50, 255.00)\",\"rgb(0.00, 114.50, 255.00)\",\"rgb(0.00, 114.50, 255.00)\",\"rgb(0.00, 119.59, 255.00)\",\"rgb(0.00, 119.59, 255.00)\",\"rgb(0.00, 119.59, 255.00)\",\"rgb(0.00, 119.59, 255.00)\",\"rgb(0.00, 119.59, 255.00)\",\"rgb(0.00, 124.95, 255.00)\",\"rgb(0.00, 124.95, 255.00)\",\"rgb(0.00, 124.95, 255.00)\",\"rgb(0.00, 124.95, 255.00)\",\"rgb(0.00, 124.95, 255.00)\",\"rgb(0.00, 130.05, 255.00)\",\"rgb(0.00, 130.05, 255.00)\",\"rgb(0.00, 130.05, 255.00)\",\"rgb(0.00, 130.05, 255.00)\",\"rgb(0.00, 130.05, 255.00)\",\"rgb(0.00, 135.41, 255.00)\",\"rgb(0.00, 135.41, 255.00)\",\"rgb(0.00, 135.41, 255.00)\",\"rgb(0.00, 135.41, 255.00)\",\"rgb(0.00, 135.41, 255.00)\",\"rgb(0.00, 140.51, 255.00)\",\"rgb(0.00, 140.51, 255.00)\",\"rgb(0.00, 140.51, 255.00)\",\"rgb(0.00, 140.51, 255.00)\",\"rgb(0.00, 140.51, 255.00)\",\"rgb(0.00, 145.60, 255.00)\",\"rgb(0.00, 145.60, 255.00)\",\"rgb(0.00, 145.60, 255.00)\",\"rgb(0.00, 145.60, 255.00)\",\"rgb(0.00, 145.60, 255.00)\",\"rgb(0.00, 150.96, 255.00)\",\"rgb(0.00, 150.96, 255.00)\",\"rgb(0.00, 150.96, 255.00)\",\"rgb(0.00, 150.96, 255.00)\",\"rgb(0.00, 150.96, 255.00)\",\"rgb(0.00, 156.06, 255.00)\",\"rgb(0.00, 156.06, 255.00)\",\"rgb(0.00, 156.06, 255.00)\",\"rgb(0.00, 156.06, 255.00)\",\"rgb(0.00, 156.06, 255.00)\",\"rgb(0.00, 161.41, 255.00)\",\"rgb(0.00, 161.41, 255.00)\",\"rgb(0.00, 161.41, 255.00)\",\"rgb(0.00, 161.41, 255.00)\",\"rgb(0.00, 161.41, 255.00)\",\"rgb(0.00, 166.52, 255.00)\",\"rgb(0.00, 166.52, 255.00)\",\"rgb(0.00, 166.52, 255.00)\",\"rgb(0.00, 166.52, 255.00)\",\"rgb(0.00, 166.52, 255.00)\",\"rgb(0.00, 171.62, 255.00)\",\"rgb(0.00, 171.62, 255.00)\",\"rgb(0.00, 171.62, 255.00)\",\"rgb(0.00, 171.62, 255.00)\",\"rgb(0.00, 171.62, 255.00)\",\"rgb(0.00, 176.97, 255.00)\",\"rgb(0.00, 176.97, 255.00)\",\"rgb(0.00, 176.97, 255.00)\",\"rgb(0.00, 176.97, 255.00)\",\"rgb(0.00, 176.97, 255.00)\",\"rgb(0.00, 182.07, 255.00)\",\"rgb(0.00, 182.07, 255.00)\",\"rgb(0.00, 182.07, 255.00)\",\"rgb(0.00, 182.07, 255.00)\",\"rgb(0.00, 182.07, 255.00)\",\"rgb(0.00, 187.42, 255.00)\",\"rgb(0.00, 187.42, 255.00)\",\"rgb(0.00, 187.42, 255.00)\",\"rgb(0.00, 187.42, 255.00)\",\"rgb(0.00, 187.42, 255.00)\",\"rgb(0.00, 192.53, 255.00)\",\"rgb(0.00, 192.53, 255.00)\",\"rgb(0.00, 192.53, 255.00)\",\"rgb(0.00, 192.53, 255.00)\",\"rgb(0.00, 192.53, 255.00)\",\"rgb(0.00, 197.88, 255.00)\",\"rgb(0.00, 197.88, 255.00)\",\"rgb(0.00, 197.88, 255.00)\",\"rgb(0.00, 197.88, 255.00)\",\"rgb(0.00, 197.88, 255.00)\",\"rgb(0.00, 202.98, 255.00)\",\"rgb(0.00, 202.98, 255.00)\",\"rgb(0.00, 202.98, 255.00)\",\"rgb(0.00, 202.98, 255.00)\",\"rgb(0.00, 202.98, 255.00)\",\"rgb(0.00, 208.08, 255.00)\",\"rgb(0.00, 208.08, 255.00)\",\"rgb(0.00, 208.08, 255.00)\",\"rgb(0.00, 208.08, 255.00)\",\"rgb(0.00, 208.08, 255.00)\",\"rgb(0.00, 213.44, 255.00)\",\"rgb(0.00, 213.44, 255.00)\",\"rgb(0.00, 213.44, 255.00)\",\"rgb(0.00, 213.44, 255.00)\",\"rgb(0.00, 213.44, 255.00)\",\"rgb(0.00, 218.53, 255.00)\",\"rgb(0.00, 218.53, 255.00)\",\"rgb(0.00, 218.53, 255.00)\",\"rgb(0.00, 218.53, 255.00)\",\"rgb(0.00, 218.53, 255.00)\",\"rgb(0.00, 223.89, 255.00)\",\"rgb(0.00, 223.89, 255.00)\",\"rgb(0.00, 223.89, 255.00)\",\"rgb(0.00, 223.89, 255.00)\",\"rgb(0.00, 223.89, 255.00)\",\"rgb(0.00, 228.99, 255.00)\",\"rgb(0.00, 228.99, 255.00)\",\"rgb(0.00, 228.99, 255.00)\",\"rgb(0.00, 228.99, 255.00)\",\"rgb(0.00, 228.99, 255.00)\",\"rgb(0.00, 234.09, 255.00)\",\"rgb(0.00, 234.09, 255.00)\",\"rgb(0.00, 234.09, 255.00)\",\"rgb(0.00, 234.09, 255.00)\",\"rgb(0.00, 234.09, 255.00)\",\"rgb(0.00, 239.44, 255.00)\",\"rgb(0.00, 239.44, 255.00)\",\"rgb(0.00, 239.44, 255.00)\",\"rgb(0.00, 239.44, 255.00)\",\"rgb(0.00, 239.44, 255.00)\",\"rgb(0.00, 244.54, 255.00)\",\"rgb(0.00, 244.54, 255.00)\",\"rgb(0.00, 244.54, 255.00)\",\"rgb(0.00, 244.54, 255.00)\",\"rgb(0.00, 244.54, 255.00)\",\"rgb(0.00, 249.90, 255.00)\",\"rgb(0.00, 249.90, 255.00)\",\"rgb(0.00, 249.90, 255.00)\",\"rgb(0.00, 249.90, 255.00)\",\"rgb(0.00, 249.90, 255.00)\",\"rgb(0.00, 255.00, 255.00)\",\"rgb(0.00, 255.00, 255.00)\",\"rgb(0.00, 255.00, 255.00)\",\"rgb(0.00, 255.00, 255.00)\",\"rgb(0.00, 255.00, 255.00)\"],\"width\":4},\"mode\":\"lines\",\"showlegend\":false,\"x\":[50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0],\"y\":[50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0,50.0,50.0,100.0,100.0,50.0],\"z\":[0.18,0.18,0.18,0.18,0.18,0.48,0.48,0.48,0.48,0.48,0.78,0.78,0.78,0.78,0.78,1.08,1.08,1.08,1.08,1.08,1.38,1.38,1.38,1.38,1.38,1.68,1.68,1.68,1.68,1.68,1.98,1.98,1.98,1.98,1.98,2.28,2.28,2.28,2.28,2.28,2.58,2.58,2.58,2.58,2.58,2.88,2.88,2.88,2.88,2.88,3.18,3.18,3.18,3.18,3.18,3.48,3.48,3.48,3.48,3.48,3.78,3.78,3.78,3.78,3.78,4.08,4.08,4.08,4.08,4.08,4.38,4.38,4.38,4.38,4.38,4.68,4.68,4.68,4.68,4.68,4.98,4.98,4.98,4.98,4.98,5.28,5.28,5.28,5.28,5.28,5.58,5.58,5.58,5.58,5.58,5.88,5.88,5.88,5.88,5.88,6.18,6.18,6.18,6.18,6.18,6.48,6.48,6.48,6.48,6.48,6.78,6.78,6.78,6.78,6.78,7.08,7.08,7.08,7.08,7.08,7.38,7.38,7.38,7.38,7.38,7.68,7.68,7.68,7.68,7.68,7.98,7.98,7.98,7.98,7.98,8.28,8.28,8.28,8.28,8.28,8.58,8.58,8.58,8.58,8.58,8.88,8.88,8.88,8.88,8.88,9.18,9.18,9.18,9.18,9.18,9.48,9.48,9.48,9.48,9.48,9.78,9.78,9.78,9.78,9.78,10.08,10.08,10.08,10.08,10.08,10.38,10.38,10.38,10.38,10.38,10.68,10.68,10.68,10.68,10.68,10.98,10.98,10.98,10.98,10.98,11.28,11.28,11.28,11.28,11.28,11.58,11.58,11.58,11.58,11.58,11.88,11.88,11.88,11.88,11.88,12.18,12.18,12.18,12.18,12.18,12.48,12.48,12.48,12.48,12.48,12.78,12.78,12.78,12.78,12.78,13.08,13.08,13.08,13.08,13.08,13.38,13.38,13.38,13.38,13.38,13.68,13.68,13.68,13.68,13.68,13.98,13.98,13.98,13.98,13.98,14.28,14.28,14.28,14.28,14.28,14.58,14.58,14.58,14.58,14.58,14.88,14.88,14.88,14.88,14.88],\"type\":\"scatter3d\"},{\"marker\":{\"color\":\"red\",\"size\":2},\"mode\":\"markers\",\"showlegend\":false,\"x\":[],\"y\":[],\"z\":[],\"type\":\"scatter3d\"}],                        {\"template\":{\"data\":{\"barpolar\":[{\"marker\":{\"line\":{\"color\":\"rgb(17,17,17)\",\"width\":0.5},\"pattern\":{\"fillmode\":\"overlay\",\"size\":10,\"solidity\":0.2}},\"type\":\"barpolar\"}],\"bar\":[{\"error_x\":{\"color\":\"#f2f5fa\"},\"error_y\":{\"color\":\"#f2f5fa\"},\"marker\":{\"line\":{\"color\":\"rgb(17,17,17)\",\"width\":0.5},\"pattern\":{\"fillmode\":\"overlay\",\"size\":10,\"solidity\":0.2}},\"type\":\"bar\"}],\"carpet\":[{\"aaxis\":{\"endlinecolor\":\"#A2B1C6\",\"gridcolor\":\"#506784\",\"linecolor\":\"#506784\",\"minorgridcolor\":\"#506784\",\"startlinecolor\":\"#A2B1C6\"},\"baxis\":{\"endlinecolor\":\"#A2B1C6\",\"gridcolor\":\"#506784\",\"linecolor\":\"#506784\",\"minorgridcolor\":\"#506784\",\"startlinecolor\":\"#A2B1C6\"},\"type\":\"carpet\"}],\"choropleth\":[{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"},\"type\":\"choropleth\"}],\"contourcarpet\":[{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"},\"type\":\"contourcarpet\"}],\"contour\":[{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"},\"colorscale\":[[0.0,\"#0d0887\"],[0.1111111111111111,\"#46039f\"],[0.2222222222222222,\"#7201a8\"],[0.3333333333333333,\"#9c179e\"],[0.4444444444444444,\"#bd3786\"],[0.5555555555555556,\"#d8576b\"],[0.6666666666666666,\"#ed7953\"],[0.7777777777777778,\"#fb9f3a\"],[0.8888888888888888,\"#fdca26\"],[1.0,\"#f0f921\"]],\"type\":\"contour\"}],\"heatmapgl\":[{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"},\"colorscale\":[[0.0,\"#0d0887\"],[0.1111111111111111,\"#46039f\"],[0.2222222222222222,\"#7201a8\"],[0.3333333333333333,\"#9c179e\"],[0.4444444444444444,\"#bd3786\"],[0.5555555555555556,\"#d8576b\"],[0.6666666666666666,\"#ed7953\"],[0.7777777777777778,\"#fb9f3a\"],[0.8888888888888888,\"#fdca26\"],[1.0,\"#f0f921\"]],\"type\":\"heatmapgl\"}],\"heatmap\":[{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"},\"colorscale\":[[0.0,\"#0d0887\"],[0.1111111111111111,\"#46039f\"],[0.2222222222222222,\"#7201a8\"],[0.3333333333333333,\"#9c179e\"],[0.4444444444444444,\"#bd3786\"],[0.5555555555555556,\"#d8576b\"],[0.6666666666666666,\"#ed7953\"],[0.7777777777777778,\"#fb9f3a\"],[0.8888888888888888,\"#fdca26\"],[1.0,\"#f0f921\"]],\"type\":\"heatmap\"}],\"histogram2dcontour\":[{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"},\"colorscale\":[[0.0,\"#0d0887\"],[0.1111111111111111,\"#46039f\"],[0.2222222222222222,\"#7201a8\"],[0.3333333333333333,\"#9c179e\"],[0.4444444444444444,\"#bd3786\"],[0.5555555555555556,\"#d8576b\"],[0.6666666666666666,\"#ed7953\"],[0.7777777777777778,\"#fb9f3a\"],[0.8888888888888888,\"#fdca26\"],[1.0,\"#f0f921\"]],\"type\":\"histogram2dcontour\"}],\"histogram2d\":[{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"},\"colorscale\":[[0.0,\"#0d0887\"],[0.1111111111111111,\"#46039f\"],[0.2222222222222222,\"#7201a8\"],[0.3333333333333333,\"#9c179e\"],[0.4444444444444444,\"#bd3786\"],[0.5555555555555556,\"#d8576b\"],[0.6666666666666666,\"#ed7953\"],[0.7777777777777778,\"#fb9f3a\"],[0.8888888888888888,\"#fdca26\"],[1.0,\"#f0f921\"]],\"type\":\"histogram2d\"}],\"histogram\":[{\"marker\":{\"pattern\":{\"fillmode\":\"overlay\",\"size\":10,\"solidity\":0.2}},\"type\":\"histogram\"}],\"mesh3d\":[{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"},\"type\":\"mesh3d\"}],\"parcoords\":[{\"line\":{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}},\"type\":\"parcoords\"}],\"pie\":[{\"automargin\":true,\"type\":\"pie\"}],\"scatter3d\":[{\"line\":{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}},\"marker\":{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}},\"type\":\"scatter3d\"}],\"scattercarpet\":[{\"marker\":{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}},\"type\":\"scattercarpet\"}],\"scattergeo\":[{\"marker\":{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}},\"type\":\"scattergeo\"}],\"scattergl\":[{\"marker\":{\"line\":{\"color\":\"#283442\"}},\"type\":\"scattergl\"}],\"scattermapbox\":[{\"marker\":{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}},\"type\":\"scattermapbox\"}],\"scatterpolargl\":[{\"marker\":{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}},\"type\":\"scatterpolargl\"}],\"scatterpolar\":[{\"marker\":{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}},\"type\":\"scatterpolar\"}],\"scatter\":[{\"marker\":{\"line\":{\"color\":\"#283442\"}},\"type\":\"scatter\"}],\"scatterternary\":[{\"marker\":{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}},\"type\":\"scatterternary\"}],\"surface\":[{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"},\"colorscale\":[[0.0,\"#0d0887\"],[0.1111111111111111,\"#46039f\"],[0.2222222222222222,\"#7201a8\"],[0.3333333333333333,\"#9c179e\"],[0.4444444444444444,\"#bd3786\"],[0.5555555555555556,\"#d8576b\"],[0.6666666666666666,\"#ed7953\"],[0.7777777777777778,\"#fb9f3a\"],[0.8888888888888888,\"#fdca26\"],[1.0,\"#f0f921\"]],\"type\":\"surface\"}],\"table\":[{\"cells\":{\"fill\":{\"color\":\"#506784\"},\"line\":{\"color\":\"rgb(17,17,17)\"}},\"header\":{\"fill\":{\"color\":\"#2a3f5f\"},\"line\":{\"color\":\"rgb(17,17,17)\"}},\"type\":\"table\"}]},\"layout\":{\"annotationdefaults\":{\"arrowcolor\":\"#f2f5fa\",\"arrowhead\":0,\"arrowwidth\":1},\"autotypenumbers\":\"strict\",\"coloraxis\":{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}},\"colorscale\":{\"diverging\":[[0,\"#8e0152\"],[0.1,\"#c51b7d\"],[0.2,\"#de77ae\"],[0.3,\"#f1b6da\"],[0.4,\"#fde0ef\"],[0.5,\"#f7f7f7\"],[0.6,\"#e6f5d0\"],[0.7,\"#b8e186\"],[0.8,\"#7fbc41\"],[0.9,\"#4d9221\"],[1,\"#276419\"]],\"sequential\":[[0.0,\"#0d0887\"],[0.1111111111111111,\"#46039f\"],[0.2222222222222222,\"#7201a8\"],[0.3333333333333333,\"#9c179e\"],[0.4444444444444444,\"#bd3786\"],[0.5555555555555556,\"#d8576b\"],[0.6666666666666666,\"#ed7953\"],[0.7777777777777778,\"#fb9f3a\"],[0.8888888888888888,\"#fdca26\"],[1.0,\"#f0f921\"]],\"sequentialminus\":[[0.0,\"#0d0887\"],[0.1111111111111111,\"#46039f\"],[0.2222222222222222,\"#7201a8\"],[0.3333333333333333,\"#9c179e\"],[0.4444444444444444,\"#bd3786\"],[0.5555555555555556,\"#d8576b\"],[0.6666666666666666,\"#ed7953\"],[0.7777777777777778,\"#fb9f3a\"],[0.8888888888888888,\"#fdca26\"],[1.0,\"#f0f921\"]]},\"colorway\":[\"#636efa\",\"#EF553B\",\"#00cc96\",\"#ab63fa\",\"#FFA15A\",\"#19d3f3\",\"#FF6692\",\"#B6E880\",\"#FF97FF\",\"#FECB52\"],\"font\":{\"color\":\"#f2f5fa\"},\"geo\":{\"bgcolor\":\"rgb(17,17,17)\",\"lakecolor\":\"rgb(17,17,17)\",\"landcolor\":\"rgb(17,17,17)\",\"showlakes\":true,\"showland\":true,\"subunitcolor\":\"#506784\"},\"hoverlabel\":{\"align\":\"left\"},\"hovermode\":\"closest\",\"mapbox\":{\"style\":\"dark\"},\"paper_bgcolor\":\"rgb(17,17,17)\",\"plot_bgcolor\":\"rgb(17,17,17)\",\"polar\":{\"angularaxis\":{\"gridcolor\":\"#506784\",\"linecolor\":\"#506784\",\"ticks\":\"\"},\"bgcolor\":\"rgb(17,17,17)\",\"radialaxis\":{\"gridcolor\":\"#506784\",\"linecolor\":\"#506784\",\"ticks\":\"\"}},\"scene\":{\"xaxis\":{\"backgroundcolor\":\"rgb(17,17,17)\",\"gridcolor\":\"#506784\",\"gridwidth\":2,\"linecolor\":\"#506784\",\"showbackground\":true,\"ticks\":\"\",\"zerolinecolor\":\"#C8D4E3\"},\"yaxis\":{\"backgroundcolor\":\"rgb(17,17,17)\",\"gridcolor\":\"#506784\",\"gridwidth\":2,\"linecolor\":\"#506784\",\"showbackground\":true,\"ticks\":\"\",\"zerolinecolor\":\"#C8D4E3\"},\"zaxis\":{\"backgroundcolor\":\"rgb(17,17,17)\",\"gridcolor\":\"#506784\",\"gridwidth\":2,\"linecolor\":\"#506784\",\"showbackground\":true,\"ticks\":\"\",\"zerolinecolor\":\"#C8D4E3\"}},\"shapedefaults\":{\"line\":{\"color\":\"#f2f5fa\"}},\"sliderdefaults\":{\"bgcolor\":\"#C8D4E3\",\"bordercolor\":\"rgb(17,17,17)\",\"borderwidth\":1,\"tickwidth\":0},\"ternary\":{\"aaxis\":{\"gridcolor\":\"#506784\",\"linecolor\":\"#506784\",\"ticks\":\"\"},\"baxis\":{\"gridcolor\":\"#506784\",\"linecolor\":\"#506784\",\"ticks\":\"\"},\"bgcolor\":\"rgb(17,17,17)\",\"caxis\":{\"gridcolor\":\"#506784\",\"linecolor\":\"#506784\",\"ticks\":\"\"}},\"title\":{\"x\":0.05},\"updatemenudefaults\":{\"bgcolor\":\"#506784\",\"borderwidth\":0},\"xaxis\":{\"automargin\":true,\"gridcolor\":\"#283442\",\"linecolor\":\"#506784\",\"ticks\":\"\",\"title\":{\"standoff\":15},\"zerolinecolor\":\"#283442\",\"zerolinewidth\":2},\"yaxis\":{\"automargin\":true,\"gridcolor\":\"#283442\",\"linecolor\":\"#506784\",\"ticks\":\"\",\"title\":{\"standoff\":15},\"zerolinecolor\":\"#283442\",\"zerolinewidth\":2}}},\"scene\":{\"xaxis\":{\"backgroundcolor\":\"black\",\"nticks\":10,\"range\":[49.998999999999995,100.001]},\"yaxis\":{\"backgroundcolor\":\"black\",\"nticks\":10,\"range\":[49.998999999999995,100.001]},\"zaxis\":{\"backgroundcolor\":\"black\",\"nticks\":10,\"range\":[0,50.002]},\"camera\":{\"eye\":{\"x\":-0.7142857142857143,\"y\":-1.4285714285714286,\"z\":0.2142857142857143},\"center\":{\"x\":0,\"y\":0,\"z\":-0.5}},\"aspectmode\":\"cube\"},\"margin\":{\"l\":10,\"r\":10,\"b\":10,\"t\":10,\"pad\":4},\"paper_bgcolor\":\"black\",\"width\":800,\"height\":500},                        {\"responsive\": true}                    ).then(function(){\n",
              "                            \n",
              "var gd = document.getElementById('48339c5f-ea6a-4bbb-bb70-bf77e901c3a3');\n",
              "var x = new MutationObserver(function (mutations, observer) {{\n",
              "        var display = window.getComputedStyle(gd).display;\n",
              "        if (!display || display === 'none') {{\n",
              "            console.log([gd, 'removed!']);\n",
              "            Plotly.purge(gd);\n",
              "            observer.disconnect();\n",
              "        }}\n",
              "}});\n",
              "\n",
              "// Listen for the removal of the full notebook cells\n",
              "var notebookContainer = gd.closest('#notebook-container');\n",
              "if (notebookContainer) {{\n",
              "    x.observe(notebookContainer, {childList: true});\n",
              "}}\n",
              "\n",
              "// Listen for the clearing of the current output cell\n",
              "var outputEl = gd.closest('.output');\n",
              "if (outputEl) {{\n",
              "    x.observe(outputEl, {childList: true});\n",
              "}}\n",
              "\n",
              "                        })                };                });            </script>        </div>"
            ]
          },
          "metadata": {},
          "output_type": "display_data"
        }
      ],
      "source": [
        "# preview the design\n",
        "\n",
        "fc.transform(steps, 'plot', fc.PlotControls(style='line', zoom=0.7))\n",
        "# hover the cursor over the lines in the plot to check xyz positions of the points in the design\n",
        "\n",
        "# uncomment the next line to create a plot with real heights/widths for extruded lines to preview the real 3D printed geometry\n",
        "# fc.transform(steps, 'plot', fc.PlotControls(style='tube', zoom=0.7, initialization_data={'extrusion_width': EW, 'extrusion_height': EH}))\n",
        "\n",
        "# uncomment the next line to create a neat preview (click the top-left button in the plot for a .png file) - post and tag @FullControlXYZ :)\n",
        "# fc.transform(steps, 'plot', fc.PlotControls(neat_for_publishing=True, zoom=0.5, initialization_data={'extrusion_width': EW, 'extrusion_height': EH}))\n"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": null,
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 17
        },
        "id": "tggFoUeJReQR",
        "outputId": "3e9733ce-224b-4aa9-abe7-d54bca6a0a96"
      },
      "outputs": [],
      "source": [
        "# generate and save gcode\n",
        "\n",
        "gcode_controls = fc.GcodeControls(\n",
        "    printer_name=printer_name,\n",
        "\n",
        "    initialization_data={\n",
        "        'primer': 'front_lines_then_y',\n",
        "        'print_speed': print_speed,\n",
        "        'nozzle_temp': nozzle_temp,\n",
        "        'bed_temp': bed_temp,\n",
        "        'fan_percent': fan_percent,\n",
        "        'extrusion_width': EW,\n",
        "        'extrusion_height': EH})\n",
        "gcode = fc.transform(steps, 'gcode', gcode_controls)\nopen(f'{design_name}.gcode', 'w').write(gcode)\nfiles.download(f'{design_name}.gcode')"
      ]
    },
    {
      "attachments": {},
      "cell_type": "markdown",
      "metadata": {},
      "source": [
        "#### please tell us what you're doing with FullControl!\n",
        "\n",
        "- tag FullControlXYZ on social media ([twitter](https://twitter.com/FullControlXYZ), [instagram](https://www.instagram.com/fullcontrolxyz/), [linkedin](https://www.linkedin.com/in/andrew-gleadall-068587119/), [tiktok](https://www.tiktok.com/@fullcontrolxyz))\n",
        "- email [info@fullcontrol.xyz](mailto:info@fullcontrol.xyz)\n",
        "- post on the [subreddit](https://reddit.com/r/fullcontrol)\n",
        "- post in the [github discussions or issues tabs](https://github.com/FullControlXYZ/fullcontrol/issues)\n",
        "\n",
        "in publications, please cite the original FullControl paper and the github repo for the new python version:\n",
        "\n",
        "- Gleadall, A. (2021). FullControl GCode Designer: open-source software for unconstrained design in additive manufacturing. Additive Manufacturing, 46, 102109. \n",
        "- Gleadall, A. and Leas, D. (2023). FullControl [electronic resource: python source code]. available at: https://github.com/FullControlXYZ/fullcontrol"
      ]
    }
  ],
  "metadata": {
    "colab": {
      "include_colab_link": true,
      "provenance": []
    },
    "kernelspec": {
      "display_name": "Python 3",
      "name": "python3"
    },
    "language_info": {
      "codemirror_mode": {
        "name": "ipython",
        "version": 3
      },
      "file_extension": ".py",
      "mimetype": "text/x-python",
      "name": "python",
      "nbconvert_exporter": "python",
      "pygments_lexer": "ipython3",
      "version": "3.11.3"
    }
  },
  "nbformat": 4,
  "nbformat_minor": 0
}
